package com.xyht.sca_s.student_manage_system.modules.purchaseRequisition.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.xyht.sca_s.student_manage_system.common.commonReturn.ResponseResult;
import com.xyht.sca_s.student_manage_system.modules.purchaseRequisition.entity.SmsPurchaseRequisition;
import com.xyht.sca_s.student_manage_system.modules.purchaseRequisition.entity.dto.SmsPurchaseRequisitionAllowDto;
import com.xyht.sca_s.student_manage_system.modules.purchaseRequisition.entity.dto.SmsPurchaseRequisitionCancelDto;
import com.xyht.sca_s.student_manage_system.modules.purchaseRequisition.entity.dto.SmsPurchaseRequisitionDto;
import com.xyht.sca_s.student_manage_system.modules.purchaseRequisition.entity.dto.SmsPurchaseRequisitionHistoryReq;

import javax.servlet.http.HttpServletResponse;
import java.util.concurrent.Future;

/**
 * <p>
 * 学院请购单 服务类
 * </p>
 *
 * @author XYHT
 * @since 2023-06-05
 */
public interface SmsPurchaseRequisitionService extends IService<SmsPurchaseRequisition> {

    ResponseResult addPurchaseRequisition(String userId, SmsPurchaseRequisitionDto addPurchaseRequisitionDto);
    ResponseResult cancelPurchaseRequisition(String userId, SmsPurchaseRequisitionCancelDto cancelDto);
    ResponseResult allowPurchaseRequisition(String userId, SmsPurchaseRequisitionAllowDto allowDto);
    ResponseResult getPurchaseRequisitionDetail(String userId, String examineId);
    ResponseResult getPurchaseRequisitionList(String userId,Integer examine_type,Integer pageNum,Integer pageSize,String search_str);
    ResponseResult getRequisitionOriginSettingProcess();
    ResponseResult getAllPurchaseRequisitionList(String userId,Integer allowStatus,String applyName,Integer pageNum,Integer pageSize);
    Future<ResponseResult> tableDownload(String apply_id, HttpServletResponse response);
    Future<ResponseResult> exportExamineHistoryList(SmsPurchaseRequisitionHistoryReq req, HttpServletResponse response);

}
